// portal.h : Contains the definition of the portal component, which allows transportation of objects
// to other areas within the world
//$Id: Portal.h 25 2009-08-21 02:02:10Z brwarner2 $
#pragma once

#include "Component.h"

//Portal component
class CPortal : public IComponent
{
public:
	//GM callback
	int GMCall(gmThread*, const std::string &name);

	//Register GM function
	static void RegisterGM( gmMachine* );

	//Component ID
	static const ComponentID COMPONENT_ID = 5;

	//Get component ID
	ComponentID GetComponentID(void) { return COMPONENT_ID; }

	//Factory function
	static IComponent* Factory(void) { return new CPortal(); }

	//Destruct function
	static void Destruct( IComponent* pPort ) { delete (pPort); }
};